home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Over 1,000 Windows 95 Programs
/
Over 1000 Windows 95 Programs (Microforum) (Disc 1).iso
/
1256
/
tour003.co_
/
tour003.co
Wrap
Text File
|
1997-04-18
|
15KB
|
419 lines
*---Created with EasyCODE(COB)----------------------------------- # EASY O
*---Last modification: 01.03.1995 14:23:21----------------------- # EASY K
*This program is used to start the procedures "Collect", "Book", \
*"Show current session info" and "Show employees' statistics" and\
* to terminate a session.
*---------------------------------------------------------------- # EASY *
*---------------------------------------------------------------- # EASY (
*TOUR003
*---------------------------------------------------------------- # EASY *
IDENTIFICATION DIVISION.
*---------------------------------------------------------------- # EASY (
**** Identification Division ***
*---------------------------------------------------------------- # EASY *
PROGRAM-ID. TOUR003.
*
*
* THIS PROGRAM IS USED TO START THE PROCEDURES
*
* 1.) COLLECT,
* 2.) BOOK,
* 3.) SHOW SESSION INFO
* AND
* 4.) SHOW EMPLOYEES' STATISTICS
*
* AND TO TERMINATE A SESSION.
*
* ATTENTION : THE TAC OF THIS PROGRAM COMES FROM THE
* MENU MASK AND IS "MENU" !
*
*
*---------------------------------------------------------------- # EASY )
ENVIRONMENT DIVISION.
DATA DIVISION.
*---------------------------------------------------------------- # EASY (
**** Data Division ***
*---------------------------------------------------------------- # EASY *
*---------------------------------------------------------------- # EASY (
**** WORKING-STORAGE Section ***
*---------------------------------------------------------------- # EASY *
WORKING-STORAGE SECTION.
77 ERRORMESSAGE-1 PIC X(80) VALUE
"WRONG FUNCTION - PLEASE RETRY".
77 ERRORMESSAGE-2 PIC X(80) VALUE
"SYSTEM FAILURE - NO SESSION INFO AVAILABLE".
77 ERRORMESSAGE-3 PIC X(80) VALUE
"SYSTEM FAILURE - NO EMPLOYEES' STATISTICS AVAILABLE".
COPY KCOPC.
COPY KCDFC.
* # EASY S
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** LINKAGE Section ***
*---------------------------------------------------------------- # EASY *
LINKAGE SECTION.
COPY KCKBC.
05 MENU-MESSAGE PIC X(80).
COPY KCPAC.
03 EMPLOYEE.
COPY EMPLOYEE.
03 SESSION.
COPY SESSION.
03 INPUT-AREA.
06 INPUT-MENU.
COPY MENU.
03 OUTPUT-AREA PIC X(118).
03 SESSINFO REDEFINES OUTPUT-AREA.
COPY SESSINFO.
03 EMPLSTAT REDEFINES OUTPUT-AREA.
COPY EMPLSTAT.
41 FILLER PIC X(12).
03 INTERNAL-MESSAGE REDEFINES OUTPUT-AREA.
COPY INTMESS.
41 FILLER PIC X(14).
03 ERROR-LINE REDEFINES OUTPUT-AREA.
05 RET-CODE PIC X(3).
05 OCCURRED-AT PIC X(5).
05 OP-CODE PIC X(4).
05 FILLER PIC X(106).
03 PEND-MODE PIC X(2).
03 NEXT-TAC PIC X(8).
* # EASY S
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY )
PROCEDURE DIVISION USING KCKBC KCSPAB.
*---------------------------------------------------------------- # EASY (
**** Procedure Division ***
*---------------------------------------------------------------- # EASY *
*---------------------------------------------------------------- # EASY (
**** INIT-OPERATION ***
*---------------------------------------------------------------- # EASY *
INIT-OPERATION.
MOVE INIT TO KCOP
* # EASY -
MOVE 80 TO KCLKBPRG
* # EASY -
MOVE 1000 TO KCLPAB
CALL "KDCS"
USING
KCPAC
IF KCRCCC NOT = "000"
THEN
PERFORM ERROR-MPUT-OPERATION
PERFORM ERROR-PEND-OPERATION
END-IF
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** MGET-OPERATION ***
*---------------------------------------------------------------- # EASY *
MGET-OPERATION.
MOVE MGET TO KCOP
* # EASY -
MOVE 89 TO KCLA
* # EASY -
MOVE "*MENU" TO KCMF
CALL "KDCS"
USING
KCPAC, INPUT-MENU
IF KCRCCC NOT = "000"
THEN
PERFORM ERROR-MPUT-OPERATION,
PERFORM ERROR-PEND-OPERATION
END-IF
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** PROCESSING ***
*---------------------------------------------------------------- # EASY *
PROCESSING.
EVALUATE FUNCTIONS OF INPUT-MENU
WHEN "1"
PERFORM COLLECT
WHEN "2"
PERFORM BOOK
WHEN "3"
PERFORM SESSION-INFO
WHEN "4"
PERFORM EMPLOYEES-STATISTICS
WHEN "5"
PERFORM SESSION-END
WHEN OTHER
PERFORM WRONG-INPUT
END-EVALUATE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** MPUT-OPERATION ***
*---------------------------------------------------------------- # EASY *
MPUT-OPERATION.
MOVE MPUT TO KCOP
* # EASY -
MOVE "NE" TO KCOM
CALL "KDCS"
USING
KCPAC, OUTPUT-AREA
IF KCRCCC > "000"
THEN
PERFORM ERROR-PEND-OPERATION
END-IF
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** PEND-OPERATION ***
*---------------------------------------------------------------- # EASY *
PEND-OPERATION.
MOVE PEND TO KCOP
* # EASY -
MOVE PEND-MODE TO KCOM
* # EASY -
MOVE NEXT-TAC TO KCRN
CALL "KDCS"
USING
KCPAC
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** ERROR-PEND-OPERATION ***
*---------------------------------------------------------------- # EASY *
ERROR-PEND-OPERATION.
MOVE PEND TO KCOP
* # EASY -
MOVE "ER" TO KCOM
CALL "KDCS"
USING
KCPAC
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** ERROR-MPUT-OPERATION ***
*---------------------------------------------------------------- # EASY *
ERROR-MPUT-OPERATION.
MOVE SPACES TO ERROR-LINE
* # EASY -
MOVE KCRCCC TO RET-CODE
* # EASY -
MOVE " AT " TO OCCURRED-AT
* # EASY -
MOVE KCOP TO OP-CODE
* # EASY -
MOVE MPUT TO KCOP
* # EASY -
MOVE "NE" TO KCOM,
MOVE 12 TO KCLM
* # EASY -
MOVE SPACES TO KCMF, KCRN
* # EASY -
MOVE KCALARM TO KCDF
CALL "KDCS"
USING
KCPAC, OUTPUT-AREA
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** END-OF-PROGRAM ***
*---------------------------------------------------------------- # EASY *
END-OF-PROGRAM.
EXIT PROGRAM
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** COLLECT ***
*---------------------------------------------------------------- # EASY *
COLLECT.
MOVE 0 TO KCLM
* # EASY -
MOVE "COLLECT" TO KCRN, NEXT-TAC
* # EASY -
MOVE "PR" TO PEND-MODE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** BOOK ***
*---------------------------------------------------------------- # EASY *
BOOK.
MOVE ZEROES TO JOURNEY-ID OF INTERNAL-MESSAGE
* # EASY -
MOVE SPACES TO WHERETOGO OF INTERNAL-MESSAGE,
NOTICE OF INTERNAL-MESSAGE
* # EASY -
MOVE 104 TO KCLM
* # EASY -
MOVE "BOOK" TO KCRN, NEXT-TAC
* # EASY -
MOVE "PR" TO PEND-MODE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** SESSION-INFO ***
*---------------------------------------------------------------- # EASY *
SESSION-INFO.
PERFORM GTDA-OPERATION
IF KCRCCC = "000"
THEN
MOVE KCBENID TO USER-ID OF SESSINFO,
MOVE KCLOGTER TO WORKSTATION OF SESSINFO,
MOVE SESSION-START OF SESSION TO
SESSION-START OF SESSINFO,
MOVE BOOKINGS OF SESSION TO
BOOKINGS OF SESSINFO,
MOVE BOOKED-SEATS OF SESSION TO
BOOKED-SEATS OF SESSINFO,
MOVE SPACES TO NOTICE OF SESSINFO
ELSE
MOVE SPACES TO SESSINFO,
MOVE ERRORMESSAGE-2 TO NOTICE OF SESSINFO
END-IF
MOVE 118 TO KCLM
* # EASY -
MOVE SPACES TO KCRN
* # EASY -
MOVE "*SESSINFO" TO KCMF
* # EASY -
MOVE KCREPL TO KCDF
* # EASY -
MOVE "MENUOUT" TO NEXT-TAC
* # EASY -
MOVE SPACES TO MENU-MESSAGE
* # EASY -
MOVE "KP" TO PEND-MODE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** EMPLOYEES-STATISTICS ***
*---------------------------------------------------------------- # EASY *
EMPLOYEES-STATISTICS.
PERFORM SGET-OPERATION
IF KCRCCC = "000"
THEN
MOVE KCBENID TO USER-ID OF EMPLSTAT,
MOVE SESSIONS OF EMPLOYEE TO
SESSIONS OF EMPLSTAT,
MOVE BOOKINGS OF EMPLOYEES TO
BOOKINGS OF EMPLSTAT,
MOVE BOOKED-SEATS OF EMPLOYEE TO
BOOKED-SEATS OF EMPLSTAT,
MOVE SPACES TO NOTICE OF EMPLSTAT
ELSE
MOVE SPACES TO EMPLSTAT,
MOVE KCBENID TO USER-ID OF EMPLSTAT,
MOVE ERRORMESSAGE-3 TO NOTICE OF EMPLSTAT
END-IF
MOVE 106 TO KCLM
* # EASY -
MOVE SPACES TO KCRN
* # EASY -
MOVE "*EMPLSTAT" TO KCMF
* # EASY -
MOVE KCREPL TO KCDF
* # EASY -
MOVE "MENUOUT" TO NEXT-TAC
* # EASY -
MOVE SPACES TO MENU-MESSAGE
* # EASY -
MOVE "KP" TO PEND-MODE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** SESSION-END ***
*---------------------------------------------------------------- # EASY *
SESSION-END.
MOVE LOW-VALUES TO KCPAC
* # EASY -
MOVE SGN TO KCOP
* # EASY -
MOVE "OF" TO KCOM
* # EASY -
MOVE 0 TO KCLA
CALL "KDCS"
USING
KCPAC, OUTPUT-AREA
MOVE 0 TO KCLM
* # EASY -
MOVE "*END" TO KCMF
* # EASY -
MOVE KCREPL TO KCDF
* # EASY -
MOVE SPACES TO KCRN, NEXT-TAC
* # EASY -
MOVE "FI" TO PEND-MODE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** WRONG-INPUT ***
*---------------------------------------------------------------- # EASY *
WRONG-INPUT.
MOVE ERRORMESSAGE-1 TO MENU-MESSAGE
* # EASY -
MOVE "MENUOUT" TO KCRN, NEXT-TAC
* # EASY -
MOVE 0 TO KCLM
* # EASY -
MOVE "PR" TO PEND-MODE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** GTDA-OPERATION ***
*---------------------------------------------------------------- # EASY *
GTDA-OPERATION.
MOVE GTDA TO KCOP
* # EASY -
MOVE 22 TO KCLA
* # EASY -
MOVE "SESSION" TO KCRN
CALL "KDCS"
USING
KCPAC, SESSION
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY (
**** SGET-OPERATION ***
*---------------------------------------------------------------- # EASY *
SGET-OPERATION.
MOVE LOW-VALUES TO KCPAC
* # EASY -
MOVE SGET TO KCOP
* # EASY -
MOVE "US" TO KCOM
* # EASY -
MOVE 18 TO KCLA
* # EASY -
MOVE "EMPLSTAT" TO KCRN
* # EASY -
MOVE SPACES TO KCUS
CALL "KDCS"
USING
KCPAC, EMPLOYEE
.
* # EASY P
*---------------------------------------------------------------- # EASY )
*---------------------------------------------------------------- # EASY )
END PROGRAM TOUR003.
*---------------------------------------------------------------- # EASY )